{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "c2071bbe-3b50-40bd-aa54-067c3c46da37",
   "metadata": {},
   "outputs": [],
   "source": [
    "#获取的用户是黑龙江所有短视频和长视频偏好均不为空的用户，一共31w\n",
    "import numpy as np\n",
    "import pandas as pd\n",
    "import matplotlib.pyplot as plt"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "3286a2d4-a303-45d7-962f-3798266e0f04",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(313562, 5)\n"
     ]
    },
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>uid</th>\n",
       "      <th>short_prefer</th>\n",
       "      <th>long_prefer</th>\n",
       "      <th>vod_play_time</th>\n",
       "      <th>live_replay_play_time</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2300104970280</td>\n",
       "      <td>动漫:0.9585;电影:0.0204;电视剧:0.0169;资讯:0.0042</td>\n",
       "      <td>电视剧:0.7771;电影:0.2081;少儿:0.0071;动漫:0.0043;综艺:0....</td>\n",
       "      <td>162.0962</td>\n",
       "      <td>3.3353</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2300103486711</td>\n",
       "      <td>电影:0.4470;音乐:0.1378;电视剧:0.1238;综艺:0.1223;动漫:0....</td>\n",
       "      <td>电视剧:0.9826;电影:0.0152;综艺:0.0012;动漫:0.0007;纪录片:0...</td>\n",
       "      <td>50.7921</td>\n",
       "      <td>8.2436</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2300104387341</td>\n",
       "      <td>电视剧:0.6119;知识:0.3368;美食:0.0512</td>\n",
       "      <td>电视剧:0.9406;电影:0.0453;少儿:0.0136;生活:0.0003;教育:0....</td>\n",
       "      <td>0.0874</td>\n",
       "      <td>167.4159</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2300106123693</td>\n",
       "      <td>少儿:0.9603;美食:0.0366;艺术:0.0031</td>\n",
       "      <td>少儿:0.9516;电影:0.0429;动漫:0.0054;电视剧:0.0001</td>\n",
       "      <td>16.0828</td>\n",
       "      <td>0.6175</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2300105176317</td>\n",
       "      <td>电影:1.0000</td>\n",
       "      <td>电视剧:0.6116;动漫:0.3544;电影:0.0324;少儿:0.0016;综艺:0....</td>\n",
       "      <td>18.0421</td>\n",
       "      <td>7.7107</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             uid                                       short_prefer  \\\n",
       "0  2300104970280           动漫:0.9585;电影:0.0204;电视剧:0.0169;资讯:0.0042   \n",
       "1  2300103486711  电影:0.4470;音乐:0.1378;电视剧:0.1238;综艺:0.1223;动漫:0....   \n",
       "2  2300104387341                     电视剧:0.6119;知识:0.3368;美食:0.0512   \n",
       "3  2300106123693                      少儿:0.9603;美食:0.0366;艺术:0.0031   \n",
       "4  2300105176317                                          电影:1.0000   \n",
       "\n",
       "                                         long_prefer  vod_play_time  \\\n",
       "0  电视剧:0.7771;电影:0.2081;少儿:0.0071;动漫:0.0043;综艺:0....       162.0962   \n",
       "1  电视剧:0.9826;电影:0.0152;综艺:0.0012;动漫:0.0007;纪录片:0...        50.7921   \n",
       "2  电视剧:0.9406;电影:0.0453;少儿:0.0136;生活:0.0003;教育:0....         0.0874   \n",
       "3           少儿:0.9516;电影:0.0429;动漫:0.0054;电视剧:0.0001        16.0828   \n",
       "4  电视剧:0.6116;动漫:0.3544;电影:0.0324;少儿:0.0016;综艺:0....        18.0421   \n",
       "\n",
       "   live_replay_play_time  \n",
       "0                 3.3353  \n",
       "1                 8.2436  \n",
       "2               167.4159  \n",
       "3                 0.6175  \n",
       "4                 7.7107  "
      ]
     },
     "execution_count": 2,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "df = pd.read_csv('C:/Users/Ysten/jupyter_doc/suixinkan/202407/all_data.csv', encoding='utf-8')\n",
    "print(df.shape)\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "909147cf-7569-4804-8437-26bf43045ce5",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>uid</th>\n",
       "      <th>short_prefer</th>\n",
       "      <th>long_prefer</th>\n",
       "      <th>vod_play_time</th>\n",
       "      <th>live_replay_play_time</th>\n",
       "      <th>short_first</th>\n",
       "      <th>long_first</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2300104970280</td>\n",
       "      <td>动漫:0.9585;电影:0.0204;电视剧:0.0169;资讯:0.0042</td>\n",
       "      <td>电视剧:0.7771;电影:0.2081;少儿:0.0071;动漫:0.0043;综艺:0....</td>\n",
       "      <td>162.0962</td>\n",
       "      <td>3.3353</td>\n",
       "      <td>动漫</td>\n",
       "      <td>电视剧</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2300103486711</td>\n",
       "      <td>电影:0.4470;音乐:0.1378;电视剧:0.1238;综艺:0.1223;动漫:0....</td>\n",
       "      <td>电视剧:0.9826;电影:0.0152;综艺:0.0012;动漫:0.0007;纪录片:0...</td>\n",
       "      <td>50.7921</td>\n",
       "      <td>8.2436</td>\n",
       "      <td>电影</td>\n",
       "      <td>电视剧</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2300104387341</td>\n",
       "      <td>电视剧:0.6119;知识:0.3368;美食:0.0512</td>\n",
       "      <td>电视剧:0.9406;电影:0.0453;少儿:0.0136;生活:0.0003;教育:0....</td>\n",
       "      <td>0.0874</td>\n",
       "      <td>167.4159</td>\n",
       "      <td>电视剧</td>\n",
       "      <td>电视剧</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2300106123693</td>\n",
       "      <td>少儿:0.9603;美食:0.0366;艺术:0.0031</td>\n",
       "      <td>少儿:0.9516;电影:0.0429;动漫:0.0054;电视剧:0.0001</td>\n",
       "      <td>16.0828</td>\n",
       "      <td>0.6175</td>\n",
       "      <td>少儿</td>\n",
       "      <td>少儿</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2300105176317</td>\n",
       "      <td>电影:1.0000</td>\n",
       "      <td>电视剧:0.6116;动漫:0.3544;电影:0.0324;少儿:0.0016;综艺:0....</td>\n",
       "      <td>18.0421</td>\n",
       "      <td>7.7107</td>\n",
       "      <td>电影</td>\n",
       "      <td>电视剧</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             uid                                       short_prefer  \\\n",
       "0  2300104970280           动漫:0.9585;电影:0.0204;电视剧:0.0169;资讯:0.0042   \n",
       "1  2300103486711  电影:0.4470;音乐:0.1378;电视剧:0.1238;综艺:0.1223;动漫:0....   \n",
       "2  2300104387341                     电视剧:0.6119;知识:0.3368;美食:0.0512   \n",
       "3  2300106123693                      少儿:0.9603;美食:0.0366;艺术:0.0031   \n",
       "4  2300105176317                                          电影:1.0000   \n",
       "\n",
       "                                         long_prefer  vod_play_time  \\\n",
       "0  电视剧:0.7771;电影:0.2081;少儿:0.0071;动漫:0.0043;综艺:0....       162.0962   \n",
       "1  电视剧:0.9826;电影:0.0152;综艺:0.0012;动漫:0.0007;纪录片:0...        50.7921   \n",
       "2  电视剧:0.9406;电影:0.0453;少儿:0.0136;生活:0.0003;教育:0....         0.0874   \n",
       "3           少儿:0.9516;电影:0.0429;动漫:0.0054;电视剧:0.0001        16.0828   \n",
       "4  电视剧:0.6116;动漫:0.3544;电影:0.0324;少儿:0.0016;综艺:0....        18.0421   \n",
       "\n",
       "   live_replay_play_time short_first long_first  \n",
       "0                 3.3353          动漫        电视剧  \n",
       "1                 8.2436          电影        电视剧  \n",
       "2               167.4159         电视剧        电视剧  \n",
       "3                 0.6175          少儿         少儿  \n",
       "4                 7.7107          电影        电视剧  "
      ]
     },
     "execution_count": 3,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#1.获取用户最喜欢的长视频一级分类和短视频一级分类\n",
    "df['short_first'] = df['short_prefer'].str.split(';', expand=False).str[0].str.split(':', expand=False).str[0]\n",
    "df['long_first'] = df['long_prefer'].str.split(';', expand=False).str[0].str.split(':', expand=False).str[0]\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "fa86f244-bb89-4e79-909b-a205a0bc58a6",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/html": [
       "<div>\n",
       "<style scoped>\n",
       "    .dataframe tbody tr th:only-of-type {\n",
       "        vertical-align: middle;\n",
       "    }\n",
       "\n",
       "    .dataframe tbody tr th {\n",
       "        vertical-align: top;\n",
       "    }\n",
       "\n",
       "    .dataframe thead th {\n",
       "        text-align: right;\n",
       "    }\n",
       "</style>\n",
       "<table border=\"1\" class=\"dataframe\">\n",
       "  <thead>\n",
       "    <tr style=\"text-align: right;\">\n",
       "      <th></th>\n",
       "      <th>uid</th>\n",
       "      <th>short_prefer</th>\n",
       "      <th>long_prefer</th>\n",
       "      <th>vod_play_time</th>\n",
       "      <th>live_replay_play_time</th>\n",
       "      <th>short_first</th>\n",
       "      <th>long_first</th>\n",
       "      <th>type</th>\n",
       "    </tr>\n",
       "  </thead>\n",
       "  <tbody>\n",
       "    <tr>\n",
       "      <th>0</th>\n",
       "      <td>2300104970280</td>\n",
       "      <td>动漫:0.9585;电影:0.0204;电视剧:0.0169;资讯:0.0042</td>\n",
       "      <td>电视剧:0.7771;电影:0.2081;少儿:0.0071;动漫:0.0043;综艺:0....</td>\n",
       "      <td>162.0962</td>\n",
       "      <td>3.3353</td>\n",
       "      <td>动漫</td>\n",
       "      <td>电视剧</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>1</th>\n",
       "      <td>2300103486711</td>\n",
       "      <td>电影:0.4470;音乐:0.1378;电视剧:0.1238;综艺:0.1223;动漫:0....</td>\n",
       "      <td>电视剧:0.9826;电影:0.0152;综艺:0.0012;动漫:0.0007;纪录片:0...</td>\n",
       "      <td>50.7921</td>\n",
       "      <td>8.2436</td>\n",
       "      <td>电影</td>\n",
       "      <td>电视剧</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>2</th>\n",
       "      <td>2300104387341</td>\n",
       "      <td>电视剧:0.6119;知识:0.3368;美食:0.0512</td>\n",
       "      <td>电视剧:0.9406;电影:0.0453;少儿:0.0136;生活:0.0003;教育:0....</td>\n",
       "      <td>0.0874</td>\n",
       "      <td>167.4159</td>\n",
       "      <td>电视剧</td>\n",
       "      <td>电视剧</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>3</th>\n",
       "      <td>2300106123693</td>\n",
       "      <td>少儿:0.9603;美食:0.0366;艺术:0.0031</td>\n",
       "      <td>少儿:0.9516;电影:0.0429;动漫:0.0054;电视剧:0.0001</td>\n",
       "      <td>16.0828</td>\n",
       "      <td>0.6175</td>\n",
       "      <td>少儿</td>\n",
       "      <td>少儿</td>\n",
       "      <td>1</td>\n",
       "    </tr>\n",
       "    <tr>\n",
       "      <th>4</th>\n",
       "      <td>2300105176317</td>\n",
       "      <td>电影:1.0000</td>\n",
       "      <td>电视剧:0.6116;动漫:0.3544;电影:0.0324;少儿:0.0016;综艺:0....</td>\n",
       "      <td>18.0421</td>\n",
       "      <td>7.7107</td>\n",
       "      <td>电影</td>\n",
       "      <td>电视剧</td>\n",
       "      <td>0</td>\n",
       "    </tr>\n",
       "  </tbody>\n",
       "</table>\n",
       "</div>"
      ],
      "text/plain": [
       "             uid                                       short_prefer  \\\n",
       "0  2300104970280           动漫:0.9585;电影:0.0204;电视剧:0.0169;资讯:0.0042   \n",
       "1  2300103486711  电影:0.4470;音乐:0.1378;电视剧:0.1238;综艺:0.1223;动漫:0....   \n",
       "2  2300104387341                     电视剧:0.6119;知识:0.3368;美食:0.0512   \n",
       "3  2300106123693                      少儿:0.9603;美食:0.0366;艺术:0.0031   \n",
       "4  2300105176317                                          电影:1.0000   \n",
       "\n",
       "                                         long_prefer  vod_play_time  \\\n",
       "0  电视剧:0.7771;电影:0.2081;少儿:0.0071;动漫:0.0043;综艺:0....       162.0962   \n",
       "1  电视剧:0.9826;电影:0.0152;综艺:0.0012;动漫:0.0007;纪录片:0...        50.7921   \n",
       "2  电视剧:0.9406;电影:0.0453;少儿:0.0136;生活:0.0003;教育:0....         0.0874   \n",
       "3           少儿:0.9516;电影:0.0429;动漫:0.0054;电视剧:0.0001        16.0828   \n",
       "4  电视剧:0.6116;动漫:0.3544;电影:0.0324;少儿:0.0016;综艺:0....        18.0421   \n",
       "\n",
       "   live_replay_play_time short_first long_first  type  \n",
       "0                 3.3353          动漫        电视剧     0  \n",
       "1                 8.2436          电影        电视剧     0  \n",
       "2               167.4159         电视剧        电视剧     1  \n",
       "3                 0.6175          少儿         少儿     1  \n",
       "4                 7.7107          电影        电视剧     0  "
      ]
     },
     "execution_count": 4,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "#2.分析用户最喜欢的长视频一级分类和最喜欢的短视频一级分类的重合度\n",
    "df['type'] = df.apply(lambda row: 1 if row['short_first'] == row['long_first'] else 0, axis=1)\n",
    "df.head()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "0075cf88-fc0d-4754-8d1e-95e55491391d",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "type\n",
      "0    231480\n",
      "1     82082\n",
      "Name: count, dtype: int64\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Ysten\\AppData\\Local\\Temp\\ipykernel_23632\\2634174225.py:9: UserWarning: Glyph 8722 (\\N{MINUS SIGN}) missing from font(s) SimHei.\n",
      "  plt.tight_layout()  # 确保图形布局紧密\n",
      "C:\\Users\\Ysten\\anaconda3\\Lib\\site-packages\\IPython\\core\\pylabtools.py:152: UserWarning: Glyph 8722 (\\N{MINUS SIGN}) missing from font(s) SimHei.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n"
     ]
    },
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAAnYAAAHWCAYAAAD6oMSKAAAAOXRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjkuMCwgaHR0cHM6Ly9tYXRwbG90bGliLm9yZy80BEi2AAAACXBIWXMAAA9hAAAPYQGoP6dpAABPQ0lEQVR4nO3dd3gU1eL/8c+mbAqQkCC9hnIFlCJNBBEpAiLNC36VIjakKGLlSlGxgoLSVFCR4lUwelFARKlBEQQFLoQSgqBBIIAECKmwCdnz+4Nf5rIkhCQkJgzv1/PMozvnzOyZs8PsJ1POOowxRgAAALjqeRV1AwAAAFAwCHYAAAA2QbADAACwCYIdAACATRDsAAAAbIJgBwAAYBMEOwAAAJsg2AEAANgEwQ4o5uLi4oq6Cdccxm2/uvB5Af9DsAMKSFpamk6fPp3rKSMj47LrfPbZZ9W5c+cCbeeyZctUt25dnTp16pJ1oqKi9Ouvv2ZbFh8ff8nljDEaNmyYfvzxxytu58aNG7V27dorXk+mI0eO5Lru448/rvvuu88jMGRkZCg1NTXbz83tduvs2bMe83799Vc9+OCD+W5vpjNnzmjevHk59vvlpKSkZJlnjNGDDz6oLVu2XHb5FStW6NVXX5XL5cp3G/Iruz7PyMhQUlKSpPN9X7VqVX3wwQc5ricxMVHh4eFKSEjItnzv3r06ePBgrtpkjPHYn/744w/NnTs3V8tu2rRJgwYNUnp6eo71YmJitHfv3lytE7iQT1E3ALCLL7/8Uvfff3+u62/cuFEtW7bMsU6/fv00efJk/fDDD7r99tuvsIXneXl5ae/evfLxufQ//3fffVc7duzQhg0bPOZHRESoT58++uqrr9SuXbssyzkcDiUkJOjRRx/Vjh075O/vr59++km33XZbtu/TvHnzSwbIzz//XCdOnLDeZ9KkSTp48KD8/Pw86rlcLtWqVUtPPfWUJOn48eM6cOCADh06pD/++EORkZHasGGDXC6XDhw4IKfTecntzrR+/Xo1a9ZMDofDmrd582bdcsstl1ymc+fOWr58ufW6ZMmSmj9/vtq0aaNHHnlEktShQwdFRERku/yyZcvUtWvXLPPPnDmjhx56SHv37lVISIj27t2rKVOmKDAwUF5e//vb3O12KzU1Vf/6179Us2ZNj3Vkvv/nn39ubZPD4VBKSormzZunZs2a5dgfERERWrZsmV566SVJ54NibGzsJfuycuXK8vX1zXGdudW1a9ds/1AIDg7W6dOntX//fsXGxqp27do5rufo0aPq27evdu/ereDgYEnnt6NEiRKSpKFDh6pBgwaaPn36Zdv07bff6t5779XmzZt1ww03KCoqSoMGDVKrVq10/fXX57jswYMH9dlnn+njjz+25v3888+KjIxUbGys9u/fr61bt2r//v36xz/+oV9//dVqL5AbBDuggPj6+qpMmTI6ceKENe+9997T22+/rQMHDljzDhw4oLCwsCwBJTtNmzbVmDFjFBISkmO9TZs2ac2aNXI6nR5hpGXLlrr11ls96gYEBEiSRyi4mJ+fn1Uv0969e3XPPfeoTp06atSo0SWXff3113XzzTfrjz/+UP369eV0OuXt7e3RL5I0a9YsLV261GNeamqqgoKCtHHjRvn6+soYo1OnTsnlcqlChQry9vaWj4+Pxo0bp379+un666/XuXPnVKFCBWsdX3/9tZ544glVrVpVLpdL5cuX1+jRo1WzZk2lp6crMTFRycnJWdpdvXp1ORwOJScna/fu3erRo4dWr14tY4zS0tLUoEEDHTlyRCEhIfL39/dYNj09XefOnfOYV79+fQ0YMECbN2+2gpXT6dTYsWP13HPPedStVatWlnWOGjVKu3fv1oIFC6y+iYuLU1pammrUqCF/f39t3rxZGzdu1NNPP62MjAy5XK4s+9XJkyf17bff6rPPPlN4eLj69esnb29vjzqZZ7sy13FxYIuOjtY999xjvd6yZYu6dOmS5b1SU1OVnp6uPXv2qG7duln6OD/mz5+vjIwMffLJJwoKCtK9995rfSbS+RDu5+eXZT+/WOY2Xbhtffv2Vc2aNTV16lQFBARk+QwuZcKECWrSpIluuOEGSVK3bt3UrFkzDR8+XCtXrvT4N5hdO0qWLOkx7/3339fPP/+sO++8U02aNFHv3r1Vp04d1a5dO0td4HIIdkAByekMWHYu/nKNioqyviguNn78+CzzHnnkEeuv/oSEBO3du1e+vr7Wl8rChQv11ltvqWnTpvLz88sS5Nxut86cOZNt2cUOHjyoLl26qE6dOlq5cqWCgoKy1Dl16pQyMjIUGhqqX3/9VSEhIUpPT7e+SEuXLq2DBw8qIyNDYWFhCggIyPK+TqdTGRkZVkD96quv9O2330qS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vLmefvppHT582ONepKioKI+zlRdfEvX19VWnTp3UpUsXHThwQKdOnVJycrImTJigxx57zKrndruzbP/FXnjhBZ09e1ZnzpzRDTfcoGeeeUbDhw/PcRlJev7555WSkiKXy6X27dtrzJgxatiwoSpWrKjPPvtMa9asyfbM04X3SB05ckQ9e/ZUenq6IiIi9Pbbb2v37t1Wnf379ystLe2SfeHj46OffvpJ/fr104YNGzR//ny9/PLL+uKLLzzeM/Np45IlS3o86evj46N169apZMmSHsHuv//9r4wx2r9/vxYvXqxNmzYpPDxcDodDSUlJCg8P16xZs6z669atU0JCgrVPrlixQgMGDNAzzzyjNWvWeAT9u+66Sw6HQ2lpabrpppu0YcMGVahQQTfeeKP1cEluzthlPpmbOQyJ2+3OcjY7IyNDpUuX1v79+7Vu3Trdf//9MsYoMjIyy4MLffr0yTKsUFBQkP744w/9+eefioqKkpeXl1JSUnTq1ClFR0crLS1NpUqVsj6fjh07Kjo6WnXq1NGAAQPk6+ur2bNn6+mnn1ZycrK1XYcOHVK1atVUtWpVtWrVSvfdd5/1nqdOndLEiRPVunVrRUdHa/jw4erevbuGDRumpKSkAn3gBNc2gh1QQM6ePatTp05lOzTJ5YYrkf73CxMHDx5U1apVc6w7dOjQbL8IGjdurA4dOuibb76xwmTjxo3VqVMnvf7661mGF8mtRx55RP369dPYsWMveV/Y888/rxkzZmjo0KHas2ePXn/9db333nvq1KmT7rrrLhljtG7dOvn4+KhChQpq2rSp7rjjDo91/Pnnn4qIiNCUKVM0d+5c+fj4aOXKlZo5c6bH2RWHw5HjAyZr1qzR3Llz1b59ewUEBGjKlCnq3bt3tk/RXixzKJcffvhBktSpUydruZEjR+rWW2/VTTfdZNVftmyZatWqZY0FFx0drS5duuiOO+7QN998o+HDh+vxxx/X6tWr1bRpU9WpU0c//PCDfH191aVLF3377be65557VL58eY92zJs3T61atbIuHfv4+Gj8+PEeN+VnBorKlStneSr04vsY4+PjtXnz5stu/4Xjz23dulVut1vh4eFq2bKltm/froULF+qZZ56x6mTeWrB3794slzFHjRplPcGbX4MGDbIeBJJk9X3m072tWrVSUlKSVqxYoe3bt2d5qKFa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zbqwL6Kjo9W+fXv5+vpq4sSJ1pm6iIgI7d+/37qMnbncunXr1LNnTz344IMaN26cx+Xav/76Sz179pSvr69Gjx6thQsXqkmTJtmGmswhUi78HdtMTqdTycnJqlWrls6dO5elr7Zt26bbbrtNt956q6ZNm6bVq1fL5XJp4sSJVp3M/TmvA3TnhtvtVs2aNVWxYkXdeeedaty4sapXr64nn3xSa9eu1VtvvaXWrVurV69e2rZtm1544QXdd999uu2226x7JDNlfg6Z//3zzz8VFxen06dP6/Tp0zp37pxcLpdOnz6tU6dOKTY21uNBp0OHDmn48OG6//77dc8993hcsp02bZqefPJJzZs375IPKGVKS0uz+nn06NHatm2bnn76aY862f1EHZBrBsAV69Spk7ntttuyzJ80aZIpX7689bpfv37Gz8/PVKhQwbhcLmOMMXPmzDFeXl5m6dKl+X7/efPmmYMHD+ZYZ//+/cbHx8dIMh07drxkvYyMDFOlShUTEBBgPv7442zr7N6927Rq1cqMHDkyS9k777xjWrdubc6cOWNuv/12I8k8+OCDVnl4eLjx9fU1kowk0759e+N2u018fLxp2bKlCQwMNCNHjjRJSUnWMj/++KO55ZZbjJ+fn/nkk0+s+YcPHzaNGzc2derU8aif6ZFHHjH33Xefx7zffvvN7Nu3z3rtcrnM0aNHjdvtNsYYM3jwYPN///d/WdbVt29f4+/vb4KDgz2moKAgU7JkSeN0Os28efM8lilVqpRZtWqV+eqrr0xgYKAJDg4227dvt/r5pptusvohICDAfP/998YYYz777DPj7e1tmjdvbiIiIqz1paWlmaefftoEBweb1q1bm5MnT1pl06dPN97e3uaDDz7waEP9+vXNnDlzjDHGJCUlGUkmJiYmy/aNHz/eXHfddaZt27bGGGNWrFhh/Pz8TP/+/U1aWppV7+DBgyYtLc3Exsaau+66y1SvXt1cd911Vv8VtPnz55vvv//eJCcne8zfvHmzqVixopk1a5bH/PXr15sWLVpk2cZ9+/YZSSY6OtoYY6x+z2l69913jTHnP6uuXbua0qVLmxkzZmTZ1tdff91Uq1bNDB061Jw+fTrH7fn3v/9tAgICjNvtNpMmTTK9evXKUufee+81vXv3zlX/ABcj2AFXKD093UydOtWsWrUqS9mff/5p1q9f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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "value_counts = df['type'].value_counts().sort_index()\n",
    "print(value_counts)\n",
    "\n",
    "plt.rcParams['font.sans-serif'] = ['SimHei']\n",
    "plt.bar(value_counts.index, value_counts.values, color='b')\n",
    "plt.xlabel('类型')\n",
    "plt.ylabel('数量')\n",
    "plt.title('用户对长视频和短视频偏好一致性分析')\n",
    "plt.tight_layout()  # 确保图形布局紧密\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "a680bc4d-bdbd-47a6-8080-248a0ab8ca08",
   "metadata": {},
   "outputs": [],
   "source": [
    "def extract_categories(row):  \n",
    "    categories = row['short_prefer'].split(';')  \n",
    "    return [cat.split(':')[0] for cat in categories]"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "9ff3c38b-0a3d-4222-ba22-d6199f4a3321",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "is_include\n",
      "0    167059\n",
      "1    146503\n",
      "Name: count, dtype: int64\n"
     ]
    },
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "C:\\Users\\Ysten\\AppData\\Local\\Temp\\ipykernel_23632\\2446300521.py:11: UserWarning: Glyph 8722 (\\N{MINUS SIGN}) missing from font(s) SimHei.\n",
      "  plt.tight_layout()  # 确保图形布局紧密\n",
      "C:\\Users\\Ysten\\anaconda3\\Lib\\site-packages\\IPython\\core\\pylabtools.py:152: UserWarning: Glyph 8722 (\\N{MINUS SIGN}) missing from font(s) SimHei.\n",
      "  fig.canvas.print_figure(bytes_io, **kw)\n"
     ]
    },
    {
     "data": {
      "image/png": "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1yNyFI1IKU8oJSKqJUSEp7pqkbrweVTkbm0itWGwIyIiIlIJ3hVLREREpBIMdkREREQqwWBHREREpBIMdkREREQqwQcUV5LVakVqairq169f6+8QIyIiorpLRJCVlYXmzZvf9iHaDHaVlJqaavNkdiIiIiJHSk5OVn7PuSwMdpVU8nM5ycnJ5foRdCIiIqLKMJvN8PHxUbLHrTDYVVLJ6Vej0chgR0RERA5Xnku/ePMEERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUq41HQH6NY0mpruAZH6idR0D4iIqgeP2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUrUWLDLyMiAn58fzp07Z9c2e/ZsDBs2zKbuxIkTCAwMhKenJ2bNmgW54TeADh48iPbt26Nhw4ZYtmyZzXo7duyAr68vmjdvjm3bttm0rV69Gk2aNEHr1q0RERFRfYMjIiIiqgE1EuwyMjIwdOjQUkNdbGws1qxZg5UrVyp1FosFw4YNQ7du3XDkyBHEx8dj8+bNAID09HQMHz4co0ePRlRUFLZs2YIDBw4AuB4Gx44di1dffRXff/895s+fj9OnTwMAvv/+e8ycORMffPABPvnkE0ycOBFXrlxx+NiJiIiIHKVGgt2TTz6JMWPG2NVbrVZMmjQJL730Elq3bq3Uf/fddzCZTFi2bBnuvvtuLFq0CBs2bAAAbNmyBc2bN8err74Kf39/zJ8/X2lbv349+vTpg4kTJ6JTp06YMmUKPv74YwDA2rVrMX78eIwYMQK9evXCiBEjsGvXrr9g9ERERESOUSPBLiwsDFOnTrWrX7duHeLi4tCqVSt8+eWXKCgoAADExMQgKCgIbm5uAICAgADEx8crbX369IFGowEA9OjRA9HR0Upb3759le2Xt42IiIioLqqRYOfn52dXl52djQULFqB169Y4f/48li9fjvvuuw95eXkwm80262g0Gjg7OyMzM9OuzWg0IjU1FQAq3VYai8UCs9lsU4iIiIhqE5ea7kCJnTt3IicnBwcOHEDDhg1RVFSETp064eOPP4aLiwt0Op3N8nq9Hrm5uXZtJfUAKt1WmsWLF2PhwoXVMlYiIiIiR6g1jzu5ePEigoKC0LBhQwDXg1dAQAASExPh5eWF9PR0m+WzsrKg1Wrt2krqAVS6rTRz5syByWRSSnJyctUHTURERFSNak2wa9myJfLy8mzqzp8/jxYtWiAwMBBRUVFKfVJSEiwWC7y8vOzajh07hhYtWgBApdtKo9PpYDQabQoRERFRbVJrgt1DDz2E+Ph4rFu3DhcvXsSqVasQExODRx99FPfffz/MZjM2bdoEAFi0aBH69+8PZ2dnDB8+HJGRkdi3bx8KCwuxZMkSDBw4EAAwcuRIbN++HXFxccjOzsaqVauUtlGjRmHNmjVISUnBpUuXsGHDBqWNiIiIqE6SGgRAkpKSlNeHDh2SoKAgMRgM0rp1a/nyyy+VtvDwcHFzcxNvb29p1KiRnDx5Umlbu3atuLq6iqenp/j5+UlaWprSNnfuXNFqtWI0GqVbt26Sm5srIiJWq1XGjRsnBoNBDAaDDB06VKxWa7n7bjKZBICYTKYqzMDtASwsLI4uRES1WUUyh0ZEpIazZbmlpaUhOjoaQUFB8Pb2tmlLSkpCQkICgoOD4e7ubtMWHx+PlJQUhISE2F1Hd/jwYeTk5CAkJER5ZEp5mM1meHh4wGQyOfS0bAW6RESVVHf2gkR0J6pI5qhTwa42YbAjUg/uBYmoNqtI5qg119gRERERUdUw2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGphEtNd4CIiBxHo6npHhCpn0hN9+D/8IgdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUow2BERERGpBIMdERERkUrUaLDLyMiAn58fzp07V2r7oEGDsHnzZuX1wYMH0b59ezRs2BDLli2zWXbHjh3w9fVF8+bNsW3bNpu21atXo0mTJmjdujUiIiJs2ubNmwdPT08EBAQg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aERqamqp65W3rTQWiwUWi0V5bTabyzNUIiIior9MrbwrdsGCBahXrx4mTpwIAHBxcYFOp7NZRq/XIzc3166tpL609crbVprFixfDw8NDKT4+PlUfKBEREVE1qnXBLiIiAqtXr8bWrVvh6uoKAPDy8kJ6errNcllZWdBqtXZtJfWlrVfettLMmTMHJpNJKcnJyVUfLBEREVE1qlXBLikpCaNHj8bq1attTq8GBgYiKirKZjmLxQIvLy+7tmPHjqFFixalrlfettLodDoYjUabQkRERFSb1Jpgl5eXh6FDh2LEiBF45JFHkJ2djezsbIgI7r//fpjNZmzatAkAsGjRIvTv3x/Ozs4YPnw4IiMjsW/fPhQWFmLJkiUYOHAgAGDkyJHYvn074uLikJ2djVWrVilto0aNwpo1a5CSkoJLly5hw4YNShsRERFRneT4m3TLBvzf4052794tAOxKSXt4eLi4ubmJt7e3NGrUSE6ePKlsZ+3ateLq6iqenp7i5+cnaWlpStvcuXNFq9WK0WiUbt26SW5uroiIWK1WGTdunBgMBjEYDDJ06FDlkSnlwcedsLCop6hZTc8tC8udUBytIplDIyJSc7GyYtLS0hAdHY2goCB4e3vbtCUlJSEhIQHBwcFwd3e3aYuPj0dKSgpCQkLsrqM7fPgwcnJyEBISojwypTzMZjM8PDxgMpkcelq2Al0iokqqO3vBiuM+hMjxHL0PqUjmqFPBrjZhsCNSDzXvBbkPIXK82hTsas01dkRERERUNQx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEjUa7DIyMuDn54dz584pdSdOnEBgYCA8PT0xa9YsiIjSdvDgQbRv3x4NGzbEsmXLbLa1Y8cO+Pr6onnz5ti2bZtN2+rVq9GkSRO0bt0aERER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Dz30kE29l5cX0tPTlddZWVnQarWVbjMYDDAYDEhPT4fRaLRbrzQ6nc4mCBIRERHVNrUq2G3duhXp6elo0KABACA3NxefffYZAKBXr17KcseOHUOLFi0AAIGBgYiKisKECRPKbOvXr59dW/fu3REVFYW7775baSu5WYOIiIioLqpVp2J//vlnnDhxAsePH8fx48cxfPhwvP7667hw4QIiIyOxb98+FBYWYsmSJRg4cCAAYOTIkdi+fTvi4uKQnZ2NVatWKW2jRo3CmjVrkJKSgkuXLmHDhg02bf/5z39gNptx5swZ7NixQ2kjIiIiqotq1RG7li1b2rx2d3dHw4YN0bBhQyxfvhxDhgyBu7s7GjRooDy4uHPnzpg2bRq6d+8OvV4Pf39/vPDCCwCAYcOG4fPPP4e/vz8AoF+/fnj00UcBAKGhoQgPD0fLli1hsVgwceJEdOvW7a8bLBEREVE104iI1HQnyispKQkJCQkIDg6Gu7u7TVt8fDxSUlIQEhJid63c4cOHkZOTg5CQEOWRKQBgtVoRGRkJnU6HHj16VKgvZrMZHh4eMJlMynV6jnBDd4nIQerOXrDiuA8hcjxH70MqkjnqVLCrTRjsiNRDzXtB7kOIHK82BbtadY0dEREREVUegx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRSjDYEREREakEgx0RERGRStTKYBceHo7WrVvDxcUFXbp0walTpwAAJ06cQGBgIDw9PTFr1iyIiLLOwYMH0b59ezRs2BDLli2z2d6OHTvg6+uL5s2bY9u2bTZtq1evRpMmTdC6dWtEREQ4fnBEREREjiK1TGJionh6esqnn34qaWlp8thjj0mvXr0kPz9fWrVqJaGhoZKYmChDhgyRjRs3iojI5cuXxWg0ysKFC+XMmTPStWtXiYiIEBGRuLg40Wq1EhYWJrGxsdKmTRtJSEgQEZE9e/aIXq+X3bt3S2RkpPj5+UlGRka5+mkymQSAmEwmx0zE/wewsLA4uqhZTc8tC8udUBytIpnjL+hOxXz11Vfy3//+V3kdEREhBoNBdu3aJZ6enpKTkyMiIsePH5fevXuLiMjy5culXbt2YrVaRURk9+7dMnbsWBERmTZtmgwcOFDZ3ooVK2TevHkiIjJixAgJDQ1V2qZPny5hYWHl6ieDHQuLeoqa1fTcsrDcCcXRKpI5at2p2KFDh2LSpEnK69OnT8Pf3x8xMTEICgqCm5sbACAgIADx8fEAgJiYGPTp0wcajQYA0KNHD0RHRyttffv2VbZX3rabWSwWmM1mm0JERERUm9S6YHejgoICvPvuu3j++edhNpvh5+entGk0Gjg7OyMzM9OuzWg0IjU1FQAq3XazxYsXw8PDQyk+Pj7VOlYiIiKiqqrVwW7BggWoV68eJk6cCBcXF+h0Opt2vV6P3Nxcu7aSegCVbrvZnDlzYDKZlJKcnFxt4yQiIiKqDi413YGyREREYPXq1fjll1/g6uoKLy8vnDhxwmaZrKwsaLVaeHl5IT093a4eQKXbbqbT6eyCJREREVFtUiuP2CUlJWH06NFYvXo1OnToAAAIDAxEVFSUzTIWiwVeXl52bceOHUOLFi1KXa+8bURERER1Ta0Ldnl5eRg6dChGjBiBRx55BNnZ2cjOzkZwcDDMZjM2bdoEAFi0aBH69+8PZ2dnDB8+HJGRkdi3bx8KCwuxZMkSDBw4EAAwcuRIbN++HXFxccjOzsaqVauUtlGjRmHNmjVISUnBpUuXsGHDBqWNiIiIqM5x/E26FbN7924BYFeSkpIkPDxc3NzcxNvbWxo1aiQnT55U1lu7dq24urqKp6en+Pn5SVpamtI2d+5c0Wq1YjQapVu3bpKbmysiIlarVcaNGycGg0EMBoMMHTpUeWTK7fBxJyws6ilqVtNzy8JyJxRHq0jm0IiI1GCurLC0tDRER0cjKCgI3t7eNm1JSUlISEhAcHAw3N3dbdri4+ORkpKCkJAQu+voDh8+jJycHISEhCiPTLkds9kMDw8PmEwmGI3Gqg3qFsrZHSKqgrq1F6wY7kOIHM/R+5CKZI46F+xqCwY7IvVQ816Q+xAix6tNwa7WXWNHRERERJXDYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEgx2RERERCrBYEdERESkEnd8sDtx4gQCAwPh6emJWbNmQURquktERERElXJHBzuLxYJhw4ahW7duOHLkCOLj47F58+aa7hYRERFRpdzRwe67776DyWTCsmXLcPfdd2PRokXYsGFDTXeLiIiIqFLu6GAXExODoKAguLm5AQACAgIQHx9fw70iIiIiqhyXmu5ATTKbzfDz81NeazQaODs7IzMzE56enjbLWiwWWCwW5bXJZFK2QUR1G/8ZE1FVOHofUpI1ynMfwB0d7FxcXKDT6Wzq9Ho9cnNz7YLd4sWLsXDhQrtt+Pj4OLSPROR4Hh413QMiqsv+qn1IVlYWPG7zZnd0sPPy8sKJEyds6rKysqDVau2WnTNnDl5++WXltdVqxdWrV+Ht7Q2NRuPwvtZWZrMZPj4+SE5OhtForOnu1DjOhy3Ohz3OiS3Ohy3Ohy3Ox3UigqysLDRv3vy2y97RwS4wMBBhYWHK66SkJFgsFnh5edktq9Pp7I7uNWjQwNFdrDOMRuMd/Y/uZpwPW5wPe5wTW5wPW5wPW5wP3PZIXYk7+uaJ+++/H2azGZs2bQIALFq0CP3794ezs3MN94yIiIio4u7oI3YuLi5Yv349Ro8ejVmzZsHJyQk//vhjTXeLiIiIqFLu6GAHAMOHD8fZs2cRHR2NoKAgeHt713SX6hSdTocFCxbYnaa+U3E+bHE+7HFObHE+bHE+bHE+Kk4j/A0tIiIiIlW4o6+xIyIiIlITBjsiIiIilbjjr7G7U7399tvYs2fPbZfLyMjA119/jVatWjm+U0REdEfIyMhAYGAgDhw4UK6/Lx988AEWLFiAjIwM9OrVC9u3b0ezZs0AXL9W/quvvlKW7devH/bt2+eortd+QnekTZs2lWu5Xbt2SVJSkoiI/Pjjj9KuXTvx9vaWd999t1zrFxUVyfPPPy/169cXg8EgEydO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",
      "text/plain": [
       "<Figure size 640x480 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "#3.分析用户最喜欢的长视频一级分类和在短视频的偏好中是否包含\n",
    "df['is_include'] = df.apply(lambda row: 1 if row['long_first'] in extract_categories(row) else 0, axis=1)  \n",
    "include_counts = df['is_include'].value_counts().sort_index()\n",
    "print(include_counts)\n",
    "\n",
    "plt.rcParams['font.sans-serif'] = ['SimHei']\n",
    "plt.bar(include_counts.index, include_counts.values, color='b')\n",
    "plt.xlabel('类型')\n",
    "plt.ylabel('数量')\n",
    "plt.title('用户的长视频是否在短视频偏好中')\n",
    "plt.tight_layout()  # 确保图形布局紧密\n",
    "plt.show()"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "id": "c22ecb7d-ca77-4927-813b-e6f047e5f2d6",
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3 (ipykernel)",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.12.4"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
